correction syntaxe
[lhc/ansible.git] / creation_nouveau_site.yml
index becb28f..145d82f 100644 (file)
@@ -1,6 +1,9 @@
 # commande pour lancer le playbook: ansible-playbook creation_nouveau_site.yml
 # attention - Par défaut ce scipt se lancer vers ligatures
 
+# pour ne jouer que la partie permettant de générer le certificat SSL pour le HTTPS lancer la commance ci-dessous:
+# ansible-playbook creation_nouveau_site.yml --tags "https"
+
 - name: Promp pour définir les variables du nouveau ite
   hosts: ligatures
   become: true # toutes les tâches seront pas défaut éxécuter en tant que root
@@ -13,7 +16,7 @@
   vars_prompt:
 
     - name: SITE
-      prompt: 'quel type de site?(ex: nuage, www, wiki, paheko ou gestion)'
+      prompt: 'quel type de site?(ex: nuage, www, paheko ou WP)'
       private: false
       default: "nuage"
 
       private: false
       default: "lhc"
 
-    - name: config_php
-      prompt: 'Faut-il configurer un pool PHP?(ex: oui/non)'
-      private: false
-      default: "non"
-
     - name: besoin_https
       prompt: 'Faut-il configurer un certificat ssl pour le HTTPS?(ex: oui/non)'
       private: false
       default: "non"
 
-    - name: sftp
-      prompt: 'besoin de configurer un accès SFTP pour ce compte (ex: oui/non)'
-      private: false
-      default: "non"
+  # pre_tasks:
 
-    - name: sftp_key
-      prompt: "Entrer la clé publique à autoriser pour l'acces SFTP (si nécessaire)"
-      private: false
-      default: "non"
-
-  pre_tasks:
-
-    - name: Vérifier le sigle n'est pas déjà utilisé
-      ansible.builtin.lineinfile:
-        dest: /etc/passwd
-        search_string: "site_{{ SIGLE }}_{{ SITE }}"
-        state: absent
-      check_mode: true
-      changed_when: false
-      register: presence_sigle
-      failed_when: presence_sigle.changed
+  #   - name: Vérifier le sigle n'est pas déjà utilisé
+  #     ansible.builtin.lineinfile:
+  #       dest: /etc/passwd
+  #       search_string: "site_{{ SIGLE }}_{{ SITE }}"
+  #       state: absent
+  #     check_mode: true
+  #     changed_when: false
+  #     register: presence_sigle
+  #     failed_when: presence_sigle.changed
 
   tasks:
 
     - name: Inclure la configuration d'un site web basique
       ansible.builtin.include_tasks: tasks/config_www.yml
 
+    - name: Inclure les configurations optionnelles d'un site www
+      ansible.builtin.include_tasks: tasks/config_options_www.yml
+      when: SITE != 'nuage'
+
     - name: Inclure la configuration nginx
       ansible.builtin.include_tasks: tasks/config_nginx.yml
       vars:
         template_site: "{{ SITE }}"
       when: besoin_https == 'non'
 
-# scenario pre-install nginx sans ssl
-# test installed=false or needupgrade:true
-# test installed=true et needupgrade:false
-# puis certbot à la fin
-# puis template nginx ssl pour test manuel
-
     - name: Bloc permettant de générer les certificats SSL
       when: besoin_https == 'oui'
+      tags: https
       block:
         - name: Inclure la configuration nginx http
           ansible.builtin.include_tasks: tasks/config_nginx.yml
@@ -91,7 +78,7 @@
 
         - name: Générer un certififat avec certbot # noqa : command-instead-of-module
           become: true
-          ansible.builtin.command: 'certbot certonly -n --nginx -d {{ SITE }}.{{ DOMAIN }}.{{ TLD }}'
+          ansible.builtin.command: 'certbot certonly -n --nginx -d {{ config_ss_domain | default(SITE) }}.{{ DOMAIN }}.{{ TLD }}'
           register: certbot_log
           ignore_errors: true
           changed_when: false
 
     - name: Inclure la configuration d'un pool PHP
       ansible.builtin.include_tasks: tasks/config_pool_php.yml
-      when: config_php == 'oui' or SITE == 'paheko' or SITE == 'gestion' or SITE == 'nuage'
+      when: config_php == 'oui' or SITE == 'paheko' or SITE == 'WP' or SITE == 'nuage'
+
+    - name: Inclure la configuration d'une bdd postgres
+      ansible.builtin.include_tasks: tasks/config_postgres.yml
+      when: config_bdd == 'postgres' or SITE == 'nuage'
+
+    - name: Inclure la configuration d'une bdd mariadb
+      ansible.builtin.include_tasks: tasks/config_mariadb.yml
+      when: config_bdd == 'mariadb' or SITE == 'WP'
 
     - name: Inclure la configuration nextcloud si besoin
       ansible.builtin.include_tasks: tasks/config_nuage.yml
 
     - name: Inclure la configuration paheko si besoin
       ansible.builtin.include_tasks: tasks/config_paheko.yml
-      when: SITE == 'paheko' or SITE == 'gestion'
+      when: SITE == 'paheko'
+
+    - name: Inclure la configuration WP si besoin
+      ansible.builtin.include_tasks: tasks/config_WP.yml
+      when: SITE == 'WP'
 
     - name: Inclure le configuration du backup
       ansible.builtin.include_tasks: tasks/config_backup.yml
 
-# SFTP key
+    - name: Inclure le configuration SFTP
+      ansible.builtin.include_tasks: tasks/config_sftp.yml
+      when: sftp_key != '' and sftp_key != 'non'